50 research outputs found
Recommended from our members
Identifying Conflicting Requirements in Systems of Systems
A System of Systems (SoS) is an arrangement of useful and independent sub-systems, which are integrated into a larger system. Examples are found in transport systems, nutritional systems, smart homes and smart cities. The composition of component sub-systems into an SoS enables support for complex functionalities that cannot be provided by individual sub-systems on their own. However, to realize the benefits of these functionalities it is necessary to address several software engineering challenges including, but not limited to, the specification, design, construction, deployment, and management of an SoS. The various component sub-systems in an SoS environment are often concerned with distinct domains; are developed by different stake-holders under different circumstances and time; provide distinct functionalities; and are used by different stakeholders, which allow for the existence of conflicting requirements. In this paper, we present a framework to support management of emerging conflicting requirements in an SoS. In particular, we describe an approach to support identification of conflicts between resource-based requirements (i.e. requirements concerned with the consumption of different resources). In order to illustrate and evaluate the work, we use an example of a pilot study of an IoT SoS ecosystem designed to support food security at different levels of granularity, namely individuals, groups, cities, and nations
Using interpreted runtime models for devising adaptive user interfaces of enterprise applications
Although proposed to accommodate new technologies and the continuous evolution of business processes and business rules, current model-driven approaches do not meet the flexibility and dynamic needs of feature-rich enterprise applications. This paper illustrates the use of interpreted runtime models instead of static models or generative runtime models, i.e. those that depend on code generation. The benefit of interpreting runtime models is illustrated in two enterprise user interface (UI) scenarios requiring adaptive capabilities. Concerned with devising a tool-supported methodology to accommodate such advanced adaptive user interface scenarios, we propose an adaptive UI architecture and the meta-model for such UIs. We called our architecture Custom Enterprise Development Adaptive Architecture (CEDAR). The applicability and performance of the proposed approach are evaluated by a case study
Engineering Adaptive Model-Driven User Interfaces
Software applications that are very large-scale, can encompass hundreds of complex user interfaces (UIs). Such applications are commonly sold as feature-bloated off-the-shelf products to be used by people with variable needs in the required features and layout preferences. Although many UI adaptation approaches were proposed, several gaps and limitations including: extensibility and integration in legacy systems, still need to be addressed in the state-of-the-art adaptive UI development systems. This paper presents Role-Based UI Simplification (RBUIS) as a mechanism for increasing usability through adaptive behaviour by providing end-users with a minimal feature-set and an optimal layout, based on the context-of- use. RBUIS uses an interpreted runtime model-driven approach based on the Cedar Architecture, and is supported by the integrated development environment (IDE), Cedar Studio. RBUIS was evaluated by integrating it into OFBiz, an open-source ERP system. The integration method was assessed and measured by establishing and applying technical metrics. Afterwards, a usability study was carried out to evaluate whether UIs simplified with RBUIS show an improvement over their initial counterparts. This study leveraged questionnaires, checking task completion times and output quality, and eye-tracking. The results showed that UIs simplified with RBUIS significantly improve end-user efficiency, effectiveness, and perceived usability
Recommended from our members
Studying location privacy in mobile applications: 'predator vs. prey' probes
Designing Privacy-aware Internet of Things Applications
Internet of Things (IoT) applications typically collect and analyse personal data that can be used to derive sensitive information about individuals. However, thus far, privacy concerns have not been explicitly considered in software en- gineering processes when designing IoT applications. The advent of behaviour driven security mechanisms, failing to address privacy concerns in the design of IoT applications can have security implications. In this paper, we explore how a Privacy-by-Design (PbD) framework, formulated as a set of guidelines, can help software engineers integrate data privacy considerations into the design of IoT applications. We studied the utility of this PbD framework by studying how software engineers use it to design IoT applications. We also explore the challenges in using the set of guidelines to influence the IoT applications design process. In addition to highlighting the benefits of having a PbD framework to make privacy features explicit during the design of IoT applications, our studies also surfaced a number of challenges associated with the approach. A key find- ing of our research is that the PbD framework significantly increases both novice and expert software engineers’ ability to design privacy into IoT applications
Adaptive model-driven user interface development systems
Adaptive user interfaces (UIs) were introduced to address some of the usability problems that plague many software applications. Model-driven engineering formed the basis for most of the systems targeting the development of such UIs. An overview of these systems is presented and a set of criteria is established to evaluate the strengths and shortcomings of the state-of-the-art, which is categorized under architectures, techniques, and tools. A summary of the evaluation is presented in tables that visually illustrate the fulfillment of each criterion by each system. The evaluation identified several gaps in the existing art and highlighted the areas of promising improvement
EUD-MARS: End-User Development of Model-Driven Adaptive Robotics Software Systems
Empowering end-users to program robots is becoming more significant. Introducing software engineering principles into end-user programming could improve the quality of the developed software applications. For example, model-driven development improves technology independence and adaptive systems act upon changes in their context of use. However, end-users need to apply such principles in a non-daunting manner and without incurring a steep learning curve. This paper presents EUD-MARS that aims to provide end-users with a simple approach for developing model-driven adaptive robotics software. End-users include people like hobbyists and students who are not professional programmers but are interested in programming robots. EUD-MARS supports robots like hobby drones and educational humanoids that are available for end-users. It offers a tool for software developers and another one for end-users. We evaluated EUD-MARS from three perspectives. First, we used EUD-MARS to program different types of robots and assessed its visual programming language against existing design principles. Second, we asked software developers to use EUD-MARS to configure robots and obtained their feedback on strengths and points for improvement. Third, we observed how end-users explain and develop EUD-MARS programs, and obtained their feedback mainly on understandability, ease of programming, and desirability. These evaluations yielded positive indications of EUD-MARS
Visual Simple Transformations: Empowering End-Users to Wire Internet of Things Objects
Empowering end-users to wire Internet of Things (IoT) objects (things and services) together would allow them to more easily conceive and realize interesting IoT solutions. A challenge lies in devising a simple end-user development approach to support the specification of transformations, which can bridge the mismatch in the data being exchanged among IoT objects. To tackle this challenge, we present Visual Simple Transformations (ViSiT) as an approach for end-users to specify such transformations by using a jigsaw puzzle metaphor, which get automatically converted into an underlying executable workflow. ViSiT is explained by presenting meta-models and an architecture that serves as a reference for implementing a system of connected IoT objects. A tool is provided for supporting end-users in visually developing and testing transformations. A tool is also provided for allowing software developers to modify, if they wish, a transformation’s underlying implementation. This work was evaluated from a technical perspective by developing transformations and measuring ViSiT’s efficiency and scalability and by constructing an example application to show ViSiT’s practicality. A study was conducted to evaluate this work from an end-user perspective, and its results showed positive indications of perceived usability, learnability, and the ability to conceive real-life scenarios for ViSiT
Recommended from our members
Cedar: Engineering Role-Based Adaptive User Interfaces for Enterprise Applications
Feature-bloated enterprise applications such as customer relationship management (CRM) and enterprise resource planning (ERP) are very large scale, encompassing millions of lines-of-code and thousands of user interfaces (UI). Also, these applications are sold as generic off-the-shelf products to be used by people with diverse needs in required feature-set and backgrounds such as skills, culture, etc. Although several approaches have been proposed for adapting UIs to various user profiles, little work has focused on simplifying enterprise application UIs through engineering adaptive behavior. We define UI simplification as a mechanism for increasing usability through adaptive behavior by providing users with a minimal feature-set and an optimal layout based on their individual profile. In this paper we present Role-Based UI Simplification (RBUIS), a tool supported approach based on our CEDAR architecture for simplifying enterprise application UIs through engineering role-based adaptive behavior. RBUIS is integrated in our generic platform for developing adaptive model-driven enterprise UIs. Our approach is validated from the technical and end-user perspectives by applying it to developing a prototype enterprise application and user-testing the outcome
Russo,“Using event calculus to formalise policy specification and analysis,”
Abstract As the interest in using policy-base